Django মডেল (Model) হল Django এর ORM (Object-Relational Mapping) সিস্টেমের মাধ্যমে ডেটাবেসের টেবিল এবং রেকর্ড ম্যানেজ করার একটি সহজ উপায়। মডেল ব্যবহার করে আপনি ডেটাবেসের টেবিল তৈরি এবং মডেল ক্লাসের মাধ্যমে সেই টেবিলের ডেটা ম্যানিপুলেট করতে পারেন।
এখানে আমরা দেখব কীভাবে Django অ্যাপের মডেল তৈরি করা হয় এবং তা ডেটাবেসে মাইগ্রেট করা হয়।
Django মডেল তৈরি করার ধাপ
১. মডেল ফাইলটি খোলা
প্রথমে আপনার Django অ্যাপের models.py ফাইলটি খুলুন। এখানে আপনি আপনার মডেল ক্লাসগুলি তৈরি করবেন। উদাহরণস্বরূপ, একটি ব্লগ অ্যাপের জন্য আমরা একটি Post মডেল তৈরি করতে পারি, যার মাধ্যমে ব্লগ পোস্টের শিরোনাম, কনটেন্ট, এবং প্রকাশের তারিখ সংরক্ষণ করা হবে।
২. মডেল তৈরি করা
models.py ফাইলে নতুন মডেল তৈরি করতে, আপনাকে Django এর models.Model ক্লাস থেকে একটি ক্লাস তৈরি করতে হবে। উদাহরণস্বরূপ:
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=200) # ব্লগ পোস্টের শিরোনাম
content = models.TextField() # ব্লগ পোস্টের কনটেন্ট
published_date = models.DateTimeField(auto_now_add=True) # পোস্টের প্রকাশের তারিখ
author = models.CharField(max_length=100) # পোস্টের লেখক
def __str__(self):
return self.title
এখানে:
title: একটিCharField, যা ব্লগ পোস্টের শিরোনাম সংরক্ষণ করে।content: একটিTextField, যা ব্লগ পোস্টের বিস্তারিত কনটেন্ট সংরক্ষণ করে।published_date: একটিDateTimeField, যা পোস্টের প্রকাশের সময় সংরক্ষণ করে।auto_now_add=Trueব্যবহার করলে এটি স্বয়ংক্রিয়ভাবে পোস্টের তৈরি হওয়ার সময় সন্নিবেশিত হয়।author: একটিCharField, যা পোস্টের লেখক (অথবা ব্যবহারকারীর নাম) সংরক্ষণ করে।
__str__ মেথডটি মডেল অবজেক্টের প্রতিনিধিত্বের জন্য ব্যবহৃত হয়। এটি Django Admin এ রেকর্ডের শিরোনাম হিসেবে ব্যবহৃত হবে।
৩. মডেল মাইগ্রেশন তৈরি করা
এখন আপনাকে তৈরি করা মডেলটি ডেটাবেসে সঠিকভাবে মাইগ্রেট করতে হবে। Django মডেলগুলোকে ডেটাবেস টেবিল হিসেবে রূপান্তর করতে মাইগ্রেশন ব্যবহার করা হয়।
প্রথমে, মডেলগুলোতে পরিবর্তন করার পর একটি মাইগ্রেশন ফাইল তৈরি করতে হবে। নিচের কমান্ডটি ব্যবহার করুন:
python manage.py makemigrations
এটি মডেল ফাইলের উপর ভিত্তি করে মাইগ্রেশন ফাইল তৈরি করবে। এই ফাইলটি মডেল এবং ডেটাবেসের মধ্যে সম্পর্ক স্থাপন করবে।
৪. মডেল মাইগ্রেশন ডেটাবেসে প্রয়োগ করা
মাইগ্রেশন ফাইল তৈরি হওয়ার পর, আপনাকে সেই মাইগ্রেশন ডেটাবেসে প্রয়োগ করতে হবে। এটি করার জন্য কমান্ডটি ব্যবহার করুন:
python manage.py migrate
এই কমান্ডটি Django এর মডেলকে ডেটাবেস টেবিল হিসেবে রূপান্তর করবে এবং আপনার Post মডেল অনুযায়ী ডেটাবেসে একটি নতুন টেবিল তৈরি করবে।
৫. Django Admin এ মডেল রেজিস্টার করা
Django Admin এর মাধ্যমে আপনার মডেল পরিচালনা করতে, আপনাকে মডেলটি admin.py ফাইলে রেজিস্টার করতে হবে। এটি করার জন্য admin.py ফাইলটি খুলুন এবং নিচের মতো কোড যোগ করুন:
from django.contrib import admin
from .models import Post
admin.site.register(Post)
এটি Post মডেলটিকে Django Admin প্যানেলে রেজিস্টার করবে, এবং আপনি সহজেই অ্যাডমিন প্যানেল থেকে Post মডেল দেখতে এবং পরিচালনা করতে পারবেন।
৬. Django Admin ব্যবহার করে মডেল দেখানো
এখন আপনি Django Admin প্যানেলে লগইন করে, Post মডেলটির নতুন রেকর্ড তৈরি এবং পরিচালনা করতে পারেন।
প্রথমে Django সার্ভার চালু করুন:
python manage.py runserver- ব্রাউজারে http://127.0.0.1:8000/admin URL এ যান।
- অ্যাডমিন প্যানেলে লগইন করুন (আপনি যদি আগে সুপারইউজার না তৈরি করে থাকেন, তবে
python manage.py createsuperuserকমান্ড দিয়ে একটি সুপারইউজার তৈরি করতে হবে)। - লগইন করার পর, আপনি
Postমডেলটি অ্যাডমিন প্যানেলে দেখতে পাবেন এবং সেখানে নতুন ব্লগ পোস্ট তৈরি করতে পারবেন।
সারাংশ
- Django মডেল হল ডেটাবেসের টেবিলের প্রতিনিধিত্বকারী ক্লাস, যা Django এর ORM এর মাধ্যমে ডেটাবেসের তথ্য পরিচালনা করে।
- মডেল তৈরি করতে,
models.Modelথেকে একটি ক্লাস তৈরি করতে হয় এবং সেখানে বিভিন্ন ফিল্ড যুক্ত করতে হয়। - মডেল তৈরি হওয়ার পর, মাইগ্রেশন ফাইল তৈরি করে তা ডেটাবেসে প্রয়োগ করতে হয়।
- Django Admin প্যানেলে মডেল দেখতে এবং পরিচালনা করতে,
admin.pyফাইলে মডেল রেজিস্টার করতে হয়।
এখন আপনার Django অ্যাপের মডেল তৈরি এবং ডেটাবেসে প্রয়োগ করা সম্পূর্ণ হয়েছে।
Read more